Amazon QuickSightでデータセットをCSV→DB接続に切り替える
前提:CSVデータからダッシュボードを作っている
前提として、「お試しでCSVからダッシュボードを作っている」状態を想定します。
前回の記事で用意した、Tableauでお馴染みの「サンプルスーパーストア」のCSVから作ったダッシュボードを使います。
上記ダッシュボードをDB参照に切り替えるのが今回のゴールです。
DB準備:MySQLを準備してデータを流し込みます
既にDBがある場合は、この手順は不要です。
AWSのサイトの中で、非常にわかりやすいハンズオンがありましたので、その手順通りに行いました。
手順は上記が詳しいのでそちらを見ていただければと思います。
DBに繋がらなかった時の話はこちら
MySQLにテーブルを作ってデータをinsert
DBに繋がったので、「サンプルスーパーストア」のCSVデータをテーブルを作って流し込みます。SQL書けば良いんですが、面倒な方はこちらをどうぞ。
上記で、CREATE文とINSERT文を自動生成してくれるので、MySQLWorkbenchから実行すると、はい、データが入りました!
Amazon QuickSightからMySQLに繋ぐ
MySQLにデータは用意できたので、Amazon QuickSightの「データセット」→「新しいデータセット」から繋げてみます。
上記でDB情報を入力して、左下の「接続を検証」というボタンをクリックして接続確認してみます。
DBに繋がらなかった時の話はこちら
接続確認OKになりましたら、右下の「データソースの作成」ボタンをクリックします。
作ったテーブル「sample_superstore」をQuickSightに取り込んでみましょう。DBから作ったデータセットは、カラム名もデータセット名も英語で作ってます。
CSVから作ったデータセットは、下記のようにカラム名もデータセット名も日本語で作ってます。
CSVのデータセットからDBのデータセットに切り替える
では、CSVのデータセットからDBのデータセットに切り替えましょう。切り替えたい分析を開きます。
(バックアップのため、作業前に別名で保存しておくと安心です。)
作業前の時点では、画面左側のデータセットは日本語の方のデータセット名になってますので、CSVのデータセットを参照しています。 このデータセット名の右上にある「鉛筆マーク」をクリックします。
今のデータセット名が表示されていますので、その右側にある「三点マーク」→「置き換え」をクリックします。
置換先のデータセット(DBのデータセット)を選んで、「選択」をクリックします。
置換されたと出てきますので、「✖️」マークで閉じます。
すると、置換データセットが不一致(カラム名が一致していないものがある)というリストがでてきます。 もし、置換前後で全ての名前が一致していたら、この画面は出ないのですが、 今回は、カラム名が日本語→英語にしたので、このような画面がでてきました。 右下の「フィールドマッピングの更新」というボタンをクリックして、マッピングへ進みます。
下記のように、どのカラムがどのカラムなのかをマッピングして入力して、画面下の「確認」ボタンをクリックします。
あら素敵、DBのデータセットに切り替わりました!切り替え完了です。
ふりかえり
さらっと書いておりますが、実は、MySQLWorkbenchが繋がらなかったり、QuickSightの接続の検証で繋がらなかったりと、本編ではないところでつまづきました。原因は、セキュリティーグループだったのですが、そちらについてはまた別記事にします。